package com.ocean.workOrder.mapper;

import java.util.Date;
import java.util.List;

import com.ocean.system.domain.Selectdy;
import com.ocean.workOrder.domain.OWorkOrder;
import org.apache.ibatis.annotations.Param;

/**
 * 任务单管理Mapper接口
 *
 * @author ocean
 * @date 2023-02-14
 */
public interface OWorkOrderMapper
{
    /**
     * 查询任务单管理
     *
     * @param id 任务单管理主键
     * @return 任务单管理
     */
    public OWorkOrder selectOWorkOrderById(String id);

    /**
     * 查询任务单管理列表
     *
     * @param oWorkOrder 任务单管理
     * @return 任务单管理集合
     */
    public List<OWorkOrder> selectOWorkOrderList(OWorkOrder oWorkOrder);

    /**
     * 新增任务单管理
     *
     * @param oWorkOrder 任务单管理
     * @return 结果
     */
    public int insertOWorkOrder(OWorkOrder oWorkOrder);

    /**
     * 修改任务单管理
     *
     * @param oWorkOrder 任务单管理
     * @return 结果
     */
    public int updateOWorkOrder(OWorkOrder oWorkOrder);

    /**
     * 删除任务单管理
     *
     * @param id 任务单管理主键
     * @return 结果
     */
    public int deleteOWorkOrderById(String id);

    /**
     * 批量删除任务单管理
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteOWorkOrderByIds(String[] ids);

    List<OWorkOrder> selectByProductidStatusEnddate(@Param("productId") String productId, @Param("status") String status, @Param("date") Date date);

    int updateWorkStatusComplete();

    int updateWorkStatusIng();

    List<OWorkOrder> selectOWorkOrderListWithoutStatus(OWorkOrder workOrder);

    List<Selectdy> selectdy(Selectdy selectdy);

    List<OWorkOrder> selectznwg(@Param("productid") String productid);

    List<OWorkOrder> selectOWorkOrderListWithoutStatus1(OWorkOrder wo);
}
